/************************************************
 * 这是一个关于测试用的代码
 * **********************************************/

#include <iostream>
#include <string>
#include <ctemplate/template.h>

int main()
{
    std::string in_html = "./test.html";
    std::string value = "hello word";

    // 形成数据字典
    ctemplate::TemplateDictionary root("test");
    root.SetValue("key", value);

    // 获取被渲染数据对象
    ctemplate::Template *tpl = ctemplate::Template::GetTemplate(in_html, ctemplate::DO_NOT_STRIP);

    // 添加字典数据到网页中
    std::string out_html;
    tpl->Expand(&out_html, &root);

    // 完成了渲染
    std::cout << out_html << std::endl;
    return 0;
}



// #include <iostream>
// #include <string>
// #include <vector>
// #include <sys/time.h>
// #include <sys/resource.h>
// #include <unistd.h>
// #include <signal.h>
// #include <jsoncpp/json/json.h>
// #include <boost/algorithm/string.hpp>

// int main()
// {
//     // const std::string str =  "1:::::判断回文数:简单:1:30000";
//     // std::vector<std::string> tokens;
//     // const std::string sep = ":";
//     // boost::split(tokens, str, boost::is_any_of(sep), boost::algorithm::token_compress_off);

//     // for(auto &iter : tokens)
//     // {
//     //     std::cout << iter << std::endl;
//     // }

//     //  Json::Value root;
//     //  root["姓名"] = "张三";
//     //  root["user"] = "whb";
//     //  root["age"] = "19";

//     //  // Json::StyledWriter writer;
//     //  Json::FastWriter writer;
//     //  std::string str = writer.write(root);
//     //  std::cout << str << std::endl;

//     // void handler(int signal)
//     // {
//     //     std::cout << "signal: " << signal << std::endl;
//     //     exit(1);
//     // }

//     // int main()
//     // {
//     //     for(int i = 0; i <= 31; i++)
//     //     {
//     //         signal(i,handler);
//     //     }

//     //     // 限制累计运行时长
//     //     struct rlimit r;
//     //     r.rlim_cur = 1;
//     //     r.rlim_max = RLIM_INFINITY;
//     //     setrlimit(RLIMIT_CPU, &r);

//     //     while(1);

//     //     // //限制空间大小
//     //     // struct rlimit r;
//     //     // r.rlim_cur = 1024 * 1024 * 20;//20M
//     //     // r.rlim_max = RLIM_INFINITY;
//     //     // setrlimit(RLIMIT_AS, &r);

//     //     // int count = 0;
//     //     // while(true)
//     //     // {
//     //     //     int *p = new int[1024*1024];
//     //     //     count++;
//     //     //     std::cout << "size: " << count << std::endl;
//     //     //     sleep(1);
//     //     // }

//     return 0;
// }
